package com.fosss.band.service;

import com.fosss.band.entity.Concert;
import com.fosss.band.utils.Result;

/**
 * @author: fosss
 * Date: 2023/12/27
 * Time: 20:32
 * Description:
 */
public interface ConcertService {

    /**
     * 分页条件查询
     */
    Result getPageByCondition(Integer userId, Integer page, Integer size, String keyword);

    /**
     * 添加演唱会
     */
    Result add(Concert concert);

    /**
     * 根据演唱会id查询演唱会
     */
    Result getById(Integer id);

    /**
     * 修改演唱会
     */
    Result update(Concert concert);

    /**
     * 删除演唱会
     */
    Result delete(Integer id);

    /**
     * 根据演唱会id获取参加的歌迷信息
     */
    Result getFansByConcertId(Integer id);

    /**
     * 参加或退出演唱会
     */
    Result updateAttendStatus(Integer fanId, Integer concertId);

    /**
     * 查询用户参加的演唱会
     */
    Result getAttendedConcerts(Integer userId);
}
